1. Field of the Invention
The present invention relates to a method and apparatus for controlling at least one controlled device in a controlling device, and more particularly, to a method and apparatus for controlling at least one controlled device in a controlling device, in which a target device to perform an actual controlling operation is set in the case that a device control message is transferred to a web server by a user manipulation in a controlling device under a virtual server controlling system. The present application is based on Korean Patent Application No. 00-48985, which is incorporated herein by reference.
2. Description of the Related Art
For convenience of explanation, a home network, which is constructed by an IEEE 1394 high performance serial bus that is widely used as an interface for digital equipment will be described. In a home network in which a plurality of devices have been connected using the IEEE 1394 protocol, various control commands are provided in order to control each device. Among them, an important control command is an audio/video control (AV/C) digital interface command set. The control command system defines a particular command code for every device or every function provided from each device, and sends a command code corresponding to the control content when a control device intends to perform a predetermined control with respect to a device to be controlled, to thereby transfer a command, in which command codes are being vividly defined at present.
In the case of a home network that has been constructed by the AV/C control command system, if there exists a device or function to be controlled, a new command code corresponding to the device or function would be defined. Accordingly, a problem seems to be solved simply. However, the following problems exist in view of the construction, operation and maintenance of the actual home network. First, a control device should possess a control command code set with respect to all devices to be controlled that can be connected to the control device. Thus, the control device is burdened by considerable software. Second, a control device that has been already issued from a manufacturer has no information about a forthcoming newly defined command code set. As a result, it is difficult to perform a device control smoothly with respect to a new device to be controlled.
A client/server model different from the AV/C digital interface control command system has been made as a worldwide network standard. Accordingly, there has been proposed a home wide web (HWW) with the thought that the client/server model can solve the problems of the control command system. Under the HWW control system, a control device includes a web browser 12 of FIG. 1 and operates as a client device, and a controlled device includes a web server module 26 of FIG. 1 and operates as a server device. According to the HWW control system, the controlled device includes a device control page (index.htm) for controlling itself, together with an icon image (logo.gif) and a device name (name.gif) for representing itself. The control device fetches the icon image, device name and the device control page provided from the controlled device, and displays the fetched results on a web browser screen. A user selects or clicks a desired control button on the device control page of the web browser screen, to thereby input his or her desired control content. When the user selects a predetermined control button, a message connected to the control button is transferred to the controlled device, and the controlled device judges what is the control content from the received message, to accordingly perform a predetermined operation.
FIGS. 1 and 2 illustrate a process that a digital VHS 20 is controlled on a digital TV 10 according to a conventional HWW control system in a home network system where the digital TV 10 and the digital VHS 20 are connected via an IEEE 1394 bus 30. In the HWW control system, a user loads a home network device list page on a web browser 12 of the digital TV 10 and then sees a list of devices that are currently connected on the network 40 and 50. FIG. 1 illustrates that items of the digital VHS 20 have been produced on the web browser 12. That is, in the HWW, each device includes device representation information for representing each device itself, in which case a logo.gif file is included as its icon image and a name.gif file is included as its device name image. The web browser 12 fetches the device representation information such as logo.gif and name.gif with respect to each device that exists on the IEEE 1394 bus 30 at present, and makes a device display icon 14 as shown in FIG. 1. Also, in the HWW standard, an index.htm file should be included as device control information or a device control page necessary for controlling itself in addition to the device representation information. Accordingly, the digital VHS 20 of FIG. 1 has an index.htm file. In order for a user to access the device control page, the logo.gif is linked with <A href=“index.htm”></A> as shown in FIG. 1.
If a user clicks an icon 14 of the digital VHS 20 that he or she wishes to control in the home network device list page shown in FIG. 1, the device control page of the digital VHS 20 linked to the logo.gif, that is, the index.htm contained in a web server module 26 of the digital VHS 20 is displayed on the web browser 12 of the digital TV 10. FIG. 2 illustrates that the index.htm of the digital VHS 20 has been displayed on the web browser 12 of the digital TV 10, through the above processes. If a user selects a portion corresponding to a device control that he or she intends to control on the web browser 12, that is, a PLAY button 16, a message, e.g., “hww?play” connected to the button 16 is transferred to a web server module 26 of the digital VHS 20 to be controlled through a HTTP (HyperText Transport Protocol) that is a general message transfer standard, in step 60. The web server module 26 of the digital VHS 20 that is a controlled device receives the message, parses the content of the message, and transfers the parsed result to a system control module 24 in a main body 22 of the digital VHS 20 in step 70. Accordingly, a device control is performed from STOP to PLAY.
In the case that the home network control system has been constructed as described above, a control device has only to have a web browser 12 satisfying a predetermined requirement, and a controlled device has only to have its own contents such as its own representation page including the name.gif and logo.gif files and its own controlling page including the index.htm file therein. Accordingly, the structure is simple and the control device should not have to have a command set with respect to all controlled devices. Therefore, the above home network control system is being regarded as having a considerably large number of merits.
However, the above two control systems are much different in the principle hypothesis. As a result, in the case that a controlled device adopting only an AV/C command control system is connected to a control device supporting a HWW web client/server model based control system, it is impossible to perform a mutual device control, and thus the value of the client/server model based control system is limited.
The Applicant provided a virtual server control system which can provide a user interface identical to the client/server control system and control a controlled device of a command control system, as disclosed in Korean Patent Application No. 98-16143 and Korean Patent Registration No. 261112, which proposed an incorporation of the two control systems in the client/server control system.
FIGS. 3 and 4 illustrate a process of controlling a digital VHS 20 being a controlled device by a digital TV 10 being a control device via the virtual server control system. The digital VHS 20 being a controlled device adopts a control command module 28 and supports a control command system. The digital TV 10 being a control device includes a command module 28′ (see FIG. 5) supporting a control command system of the digital VHS 20 together with a web browser 12 and a web server module 19. Since the virtual server control system is designed to have a user interface identical to the HWW control system, a user loads a home network device list page on the web browser 12 of the digital TV 10 at first as described above referring to FIG. 1, in order to see a list of devices connected to the current network. The digital VHS 20 being the controlled device does not support the HWW system, and thus does not provide the above logo.gif and name.gif files. The internal web server module 19 of the digital TV 10 being a control device as shown in FIG. 3 contains a pxvhs_logo.gif file and a pxvhs_name.gif file in advance, on behalf of the digital VHS 20, and provides them to the web browser 12.
FIG. 3 illustrates that the web browser 12 requests the internal web server module 19 in the digital TV 10 to transfer the pxvhs_logo.gif and pxvhs_name.gif image files as depicted as a dotted arrow 40, and receives them as depicted as a dotted arrow 50. As a result, an icon of the digital VHS 20 is formed on the web browser 12. As shown in FIG. 3, the web server module 19 of the digital TV 10 further includes a pxvhs_index.htm file. This file exists for the same purpose as that of the index.htm file present in the web server module 26 of the digital VHS 20 in the client/server control system. That is, although the pxvhs_index.htm file exists in order to control the function of the digital VHS 20, it is different in that the pxvhs_index.htm file does not exist in the digital VHS 20 being a controlled device but in the digital TV 10 being a control device. As shown, the pxvhs_index.htm file is linked to a pxvhs_logo.gif image being a logo icon 14 of the digital VHS 20.
FIG. 4 illustrates a process when a logo image (or a logo image and name image in both) 14 on the web browser 12 is selected or clicked by a user in order to control the digital VHS 20. If a user selects the logo image of the digital VHS 20, a message of “pxvhs_index.htm” linked to the logo image is transferred to the web server module 19 in the digital TV 10 as depicted as a dotted arrow 62. The web server module 19 returns the pxvhs—index.htm file to the web browser in reply to the user selection of the logo image as depicted as a dotted arrow 72. The pxvhs_index.htm file can be prepared and contained in advance in the web server module 19 of the digital TV 10, or can be produced dynamically according to a given circumstance.
FIG. 5 illustrates a process of operating a particular function of the digital VHS 20 being a controlled device when a user selects his or her desired function on the web browser 12 of the digital TV 10. For example, it is assumed that a current status of the digital VHS 20 being a controlled device is in a STOP state, and a user inserts a video tape cassette into the digital VHS 20 and replays it. In this case, since the user desires to replay the videotape cassette, he or she has only to select or click a portion corresponding to a REPLAY in a pxvhs_index.htm page indicated on the screen of the web browser 12 in the digital TV 10. As soon as the user selects the REPLAY portion, a message linked to the portion, e.g. “hww?pxvhs_play” is transferred to the web server module 19 of the digital TV 10 as depicted as a dotted arrow 11. The web server module 19 having received the message parses from the contents of the message that the user commanded a particular digital VHS 20 to perform a replay operation, and transfers a request for execution of the command content to the command module 28′ as depicted as a dotted arrow 21. Usually, the process in which the web server module 19 transfers an execution request to the command module 28′ is accomplished in a manner that a CGI (Common Gateway Interface) program of the web server module 19 calls an API (Application Program Interface) function provided by the command module 28′, e.g. a DVHS Play() function. The command module 28′ having received the request transfers a command to the command module 28 of the digital VHS 20, as depicted as a dotted arrow 31, using a command supported by the digital VHS 20 being a controlled device, for example, a control command of a playback mode with respect to a tape player sub-unit in the case of an AV/C command set. The command module 28 of the digital VHS 20 having received the command from the digital TV 10 parses the command and grasps a command content, e.g., a tape replay, to then transfer the content to a system module 25 of the digital main body 22 of the digital VHS 20 as depicted as a dotted arrow 41. Then, the system control module 25 shifts the state of the digital VHS 20 from the STOP mode to the REPLAY mode. Finally, a user desired control function has been accomplished. Then, it is desirable that a content that a replay command has been successfully completed in the digital VHS 20 is transferred starting from the command module 28 of the digital VHS 20, the command module 28′ of the digital TV 10, and the web server module 19, and finally to the web browser 12 so as to be indicated on the screen of the web browser 12 of the digital TV 10.
As described above, the virtual server control system can control a controlled device by providing the same user interface as that of the client/server control system even with respect to a device unsupported by the client/server control system. Thus, it can be seen that all devices can be controlled on a single user interface, if the client/server control system is incorporated with the virtual server control system and the incorporated control system is provided in the case that the home network is constructed with the client/server control system.
However, if the virtual server control system is more deeply reviewed, a device control page of href=“pxvha_index.htm” is linked to a pxvha_logo.gif image indicated on a device list page. Then, if a particular function portion of the device control page is selected, a device control message linked with the particular function portion, e.g., “hww?pxvhs_play” or “hww?pxvhs_rewind” is transferred to the internal web server module 19. Accordingly, the digital VHS 20 being a controlled device is controlled by using a predetermined command set, typically an AV/C command set, in response to the transferred device control message. Therefore, it can be seen that it is very difficult to determine a target device when a command is actually transferred in the AV/C command set finally. For example, in the case that two or more digital VHS's are connected in the current network, if a user presses an icon to thereby transfer a “hww?pxvhs_play” message to the web server module 19, it is difficult to determine which digital VHS 20 to control. This is because the web server module performs a device control absolutely relying upon a message, while a device selection is performed by a user visual judgment.